1. Field of the Invention
This invention relates generally to color image reproduction systems, and relates more particularly to features that improve color matching between original color images and reproductions of those images.
2. Description of the Related Art
Overview
Color image reproduction systems typically include an input device for obtaining a representation of an original image, an output device for generating a replica of the image, and a controlling device that processes signals received from the input device to generate new signals sent to the output device to produce the replica, which preferably is a high-fidelity reproduction of the original image. The controlling device may be implemented by a general-purpose computer with appropriate software and/or hardware for peripheral control and signal processing. Examples of an input device include hand held, flatbed and sheet-fed optical scanners, digital and video cameras, and software applications. In other words, an original image may be sensed or it may be created by a process. Examples of an output device include ink jet, laser and photolithography printers, electrostatic, flatbed and drum plotters, and video displays such as cathode ray tubes, thin-film-transistor and liquid crystal display panels.
Generally, input and output devices use some device dependent color-coordinate system to specify colors. These coordinate systems are often specified in some device-dependent color space that conveniently maps the color coordinates to the color-sensing or color-generating process of the particular device. The term xe2x80x9dcolor spacexe2x80x9d refers to an N-dimensional space in which each point corresponds to a particular color.
One example of a three-dimensional color space is an RGB space in which point coordinates specify particular amounts of red (R), green (G) and blue (B) colorant that additively combine to represent a specific color. The operation of many scanners and color display devices may be conveniently controlled by signals that are specified in RGB space. An example of a four-dimensional color space is a CMYK color space in which point coordinates specify particular amounts of cyan (C), magenta (M), yellow (Y) and black (K) colorant that subtractively combine to represent a specific color. Another example is the three-dimensional CMY color space. The operation of many ink jet and laser printers may be conveniently controlled by signals that are specified in CMYK space or CMY space. Other color spaces that are related to particular devices are also known.
Many practical devices are capable of sensing or reproducing only a portion of the full range of colors that can be discerned by a human observer. A device xe2x80x9cgamutxe2x80x9d refers to the range of colors that can be sensed or reproduced by a particular device. For example, the gamut of a particular scanner refers to the range of colors that can be sensed by that scanner and the gamut of a particular printer refers to the range of colors that can be reproduced or printed by that printer.
A scanner gamut is determined by a variety of factors including the spectral response of the optical sensors, the spectral characteristics of color filters, spectral characteristics of the illumination source and the resolution and linearity of analog-to-digital converters.
A printer gamut is determined by a variety of factors including spectral characteristics of colorants such as ink, spectral and porosity characteristics of media such as paper, resolution or dots-per-inch of the printed image, half-toning methods and use of dithering, if any.
A video display gamut is determined by a variety of factors including spectral characteristics of the light emitting material, type of display device, resolution of pixels or video lines, and excitation voltage.
Although it is possible in principle to construct a color image reproduction system by merely connecting an output device directly to an input device, the results generally would not be satisfactory because the device-dependent coordinate systems and color spaces for the input and output devices are generally not the same. Even if the two sets of coordinate systems and color spaces are the same, the fidelity of the reproduced image as compared to an original image would probably be very poor because the gamut of the input device generally is not co-extensive with the gamut of the output device. Values representing xe2x80x9cout-of-gamutxe2x80x9d colors that are not in the output device gamut cannot be reproduced exactly. Instead, some xe2x80x9cin-gamutxe2x80x9d color that is in the gamut of the output device must be substituted for each out-of-gamut color.
Color image reproduction systems can achieve high-fidelity reproductions of original images by applying one or more transformations or mapping functions to convert point coordinates in one color space into appropriate point coordinates in another color space. These transformations may be conveniently performed by the controlling device, mentioned above. In particular, with respect to the output device gamut, transformations are used to convert values representing in-gamut and out-of-gamut colors in an input-device-dependent color space (DDCS) into values representing in-gamut colors in an output-DDCS. The mapping of in-gamut colors and out-of-gamut colors is discussed separately.
Mapping In-Gamut Colors
The transformation of output device in-gamut colors for many practical devices are non-linear and cannot be easily expressed in some analytical or closed form; therefore, practical considerations make accurate implementations difficult to achieve. Many known methods implement these transformations as an interpolation of entries in a look-up table (LUT) derived by a process that essentially inverts relationships between device responses to known input values. For example, a transformation for an input device may be derived by using a medium conveying patches of known color values in some device-independent color space (DICS) such as the Commission International de L""Eclairage (CIE) 1931 XYZ space, scanning the medium with the input device to generate a set of corresponding values in some input-DDCS such as RGB color space, and constructing an input LUT comprising table entries that associate the known color XYZ values with the scanned RGB values. In subsequent scans of other images, scanned RGB values can be converted into device-independent XYZ values by finding entries in the input LUT having RGB values that are close to the scanned values and then interpolating between the associated XYZ values in those table entries. Various interpolation techniques such as trilinear, prism, pyramidal and tetrahedral interpolation may be used.
Similarly, a transformation for an output device may be derived by producing a medium with color patches in response to color values selected from some output-DDCS such as CMYK color space, determining the color value of the patches in a DICS such as CIE XYZ space by measuring the patches using a spectral photometer, and constructing an output LUT comprising table entries that associate the measured color XYZ values with the corresponding CMYK values. In subsequent output operations, XYZ color values can be converted into device-dependent CMYK values by finding entries in the output LUT having XYZ values that are close to the desired values and then interpolating between associated CMYK values in those table entries. Various interpolations such as those mentioned above may be used.
In operation, a color image reproduction system scans an original image to obtained scanned value in some input-DDCS, transforms the scanned values into some DICS, transforms these device-independent values from the DICS into some output DDCS and, in response, generates a replica of the original image. As mentioned above, the transformations described thus far apply only to output device in-gamut colors.
Mapping Out-of-Gamut Colors
By definition, output device out-of-gamut colors cannot be reproduced exactly. Instead, high-quality color image reproduction systems use transforms or mapping functions that substitute an in-gamut color for each out-of-gamut color. Preferably, these transforms attempt to minimize the perceptible difference between each out-of-gamut color and the corresponding substitute in-gamut color.
Techniques for transforming out-of-gamut colors into in-gamut colors generally map the out-of-gamut colors to the boundary of the output device gamut or compress a region of color space so that all desired colors are mapped into the output device gamut. U.S. Pat. No. 5,185,661 describes a technique which seeks to preserve the hue of out-of-gamut colors. The technique disclosed in U.S. Pat. No. 5,450,216 seeks to minimize perceptible changes in luminance or chrominance. U.S. Pat. No. 5,491,568 discloses a technique that projects out-of-gamut colors onto the gamut boundary along a line orthogonal to a gray line in color space. In U.S. Pat. No. 5,692,071, a disclosed technique maps each out-of-gamut color to the closest entry in a LUT. The technique disclosed in U.S. Pat. No. 5,712,925 divides the output device gamut into a higher-fidelity region and a lower-fidelity region and compresses all color space outside the higher-fidelity region into the lower-fidelity region.
It is an object of the present invention to improve out-of-gamut mapping in a color reproduction system.
It is another object of this invention to provide an improved out-of-gamut mapping strategy which does not effect in-gamut colors.
It is a further object of this invention to provide an improved out-of-gamut mapping strategy which ensures that out-of-gamut colors will be mapped to the boundary of a device gamut while preserving hue angle and minimizing the combined chrominance-luminance error.
It is still another object of this invention to provide an improved out-of-gamut mapping strategy and to provide a degree of device and medium independence by separately accounting for differences in luminance dynamic range of various devices and differences in medium spectral characteristics known as the white point.
In accordance with the invention, color space transformations are derived for a color reproduction system comprising an input device and an output device. A first transformation is obtained for the input device such that for a color within the output-device gamut, the first transformation is defined by interpolation of point values within a first device-independent color space, and for a first color outside of the output-device gamut, the first transformation is defined by a point in a first device-independent color space that corresponds to an intersection of a boundary of the output-device gamut with a projection between a point representing the first color and a point on a neutral-color line, such that the hue of the first color is preserved and the distance between the first color and the intersection of the boundary and the projection is minimized. A second transformation is obtained for the output device such that for a color within the output-device gamut, the second transformation is defined by interpolation of point values within a second device-independent color space, and for a second color outside of the output-device gamut, the second transformation is defined by a point in the second device-independent color space that corresponds to an intersection of a boundary of the output-device gamut with a projection between a point representing the second color and a point on a neutral-color line, such that the hue of the second color is preserved and the distance between the second color and the intersection of the boundary and the projection is minimized.
According to another aspect of the invention, a normalization transformation is obtained that normalizes information obtained from the first transformation with respect to a white point in the device-independent color space.